<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title></title>
  </head>
  <body>
    <script type="text/javascript">
      // 回调地狱；
      // setTimeout(()=>{
      // 	console.log(111);

      // 	setTimeout(()=>{

      // 		console.log(222);
      // 		setTimeout(()=>{

      // 			console.log(333);
      // 		},3000)

      // 	},2000)
      // },1000)

      function fn1() {
        let p1 = new Promise((res) => {
          setTimeout(() => {
            // console.log(1111)
            res(1111);
          }, 1000);
        });
        return p1;
      }

      function fn2() {
        let p2 = new Promise((res) => {
          setTimeout(() => {
            // console.log(222)
            res(2222);
          }, 1000);
        });
        return p2;
      }

      function fn3() {
        let p3 = new Promise((res) => {
          setTimeout(() => {
            // console.log(333);
            res(333);
          }, 1000);
        });
        return p3;
      }

      fn1()
        .then((res) => {
          console.log(res);
          return fn2();
        })
        .then((res) => {
          console.log(res);
          return fn3();
        })
        .then((res) => {
          console.log(res);
        });
    </script>
  </body>
</html>
